package com.zygh.policeasset.pojo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zygh.policeasset.utils.DoubleSerialize;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

@Data
@Accessors(chain = true)
public class Assets{
    @ExcelProperty(value = {"唯一编号"}, index = 51)
    @ApiModelProperty("主键")
    private Integer id;

    @ExcelProperty(value = {"资产编号"}, index = 0)
    @ApiModelProperty("资产编号(全部都有)")
    private String assetNum;

    @ExcelProperty(value = {"资产名称"}, index = 1)
    @ApiModelProperty("资产名称(全部都有)")
    private String name;

    @JsonSerialize(using = DoubleSerialize.class)
    @ExcelProperty(value = {"单价"}, index = 2)
    @ApiModelProperty("单价(都有)")
    private String unitPrice;

    @JsonSerialize(using = DoubleSerialize.class)
    @ExcelProperty(value = {"合计"}, index = 3)
    @ApiModelProperty("合计(都有)")
    private String combined;

    @ExcelProperty(value = {"账面大类"}, index = 4)
    @ApiModelProperty("账面大类")
    private String assetsClassificationPName;

    @ExcelProperty(value = {"账面小类"}, index = 5)
    @ApiModelProperty("账面小类")
    private String assetsClassificationName;

    @ExcelProperty(value = {"资产大类名称"}, index = 6)
    @ApiModelProperty("资产大类名称")
    private String witbigName;

    @ExcelProperty(value = {"资产小类名称"}, index = 7)
    @ApiModelProperty("资产小类名称")
    private String witsmallName;

    @ExcelProperty(value = {"建设单位"}, index = 8)
    @ApiModelProperty("建设单位")
    private String construcUnitName;

    @ExcelProperty(value = {"折旧年限"}, index = 9)
    @ApiModelProperty("折旧年限(都有)")
    private Integer depreciationYear;

    @ExcelProperty(value = {"数量"}, index = 10)
    @ApiModelProperty("数量(都有)，默认为1")
    private Integer number;

    @ExcelProperty(value = {"存放地点"}, index = 11)
    @ApiModelProperty("存放地点(都有)")
    private String place;

    @ExcelProperty(value = {"启用日期"}, index = 12)
    @ApiModelProperty("启用日期(都有)")
    private String startDatetime;

    @ExcelProperty(value = {"附加号"}, index = 13)
    @ApiModelProperty("附加号(基础)")
    private String additionalNumber;

    @ExcelProperty(value = {"资产分类名称"}, index = 14)
    @ApiModelProperty("资产分类名称(采购)")
    private String assetTypeName;

    @ExcelProperty(value = {"资产类型名称"}, index = 15)
    @ApiModelProperty("资产类型名称")
    private String assetsTypeName;

    @ExcelProperty(value = {"品牌"}, index = 16)
    @ApiModelProperty("品牌(采购、基础、日常、智能硬件)")
    private String brand;

    @ExcelProperty(value = {"承建单位"}, index = 17)
    @ApiModelProperty("承建单位(基础、日常、智能硬件、智能软件)")
    private String buildUnit;

    @ExcelProperty(value = {"竣工验收时间"}, index = 18)
    @ApiModelProperty("竣工验收时间(基础、日常、智能硬件、智能软件)")
    private String completionTime;

    @ExcelProperty(value = {"使用状况"}, index = 19)
    @ApiModelProperty("使用状况(采购)")
    private String conditionStatus;

    @ExcelProperty(value = {"折旧状态"}, index = 20)
    @ApiModelProperty("折旧状态(采购)")
    private String depreciationStatus;

    @ExcelProperty(value = {"录入时间"}, index = 21)
    @ApiModelProperty("录入时间")
    private String createTime;

    @ExcelProperty(value = {"开发厂商"}, index = 22)
    @ApiModelProperty("开发厂商(智能软件)")
    private String developmentUnit;

    @ExcelProperty(value = {"设备ip"}, index = 23)
    @ApiModelProperty("设备ip(智能硬件)")
    private String facilityIp;

    @ExcelProperty(value = {"取得方式"}, index = 24)
    @ApiModelProperty("取得方式(采购)")
    private String gainingType;

    @ExcelProperty(value = {"取得日期"}, index = 25)
    @ApiModelProperty("取得日期(采购)")
    private String getDatetime;

    @ExcelProperty(value = {"保修截止日期"}, index = 26)
    @ApiModelProperty("保修截止日期(采购)")
    private String guaranteeStopDatetime;

    @ExcelProperty(value = {"发布方式"}, index = 27)
    @ApiModelProperty("发布方式(智能软件)")
    private String issueType;

    @ExcelProperty(value = {"运维单位"}, index = 28)
    @ApiModelProperty("运维单位")
    private String maintainUnitName;

    @ExcelProperty(value = {"管理部门"}, index = 29)
    @ApiModelProperty("管理部门(采购)")
    private String manageDepartment;

    @ExcelProperty(value = {"生产厂家"}, index = 30)
    @ApiModelProperty("生产厂家(采购)")
    private String manufacturer;

    @ExcelProperty(value = {"规格型号"}, index = 31)
    @ApiModelProperty("规格型号(采购、基础、日常、智能硬件)")
    private String models;

    @ExcelProperty(value = {"价值类型"}, index = 32)
    @ApiModelProperty("价值类型(采购)")
    private String moneyType;

    @ExcelProperty(value = {"是否正常访问"}, index = 33)
    @ApiModelProperty("是否正常访问(智能软件)")
    private String normalAccess;

    @ExcelProperty(value = {"合同名称"}, index = 34)
    @ApiModelProperty("合同名称(基础、日常、智能硬件、智能软件)")
    private String pactName;

    @ExcelProperty(value = {"供电方式"}, index = 35)
    @ApiModelProperty("供电方式(智能硬件)")
    private String powerType;

    @ExcelProperty(value = {"采购组织形式"}, index = 36)
    @ApiModelProperty("采购组织形式(采购)")
    private String purchaseType;

    @ExcelProperty(value = {"设备用途"}, index = 37)
    @ApiModelProperty("设备用途(采购)")
    private String purpose;

    @ExcelProperty(value = {"质保期限"}, index = 38)
    @ApiModelProperty("质保期限（智能硬件、智能软件）")
    private Integer qualityAssurance;

    @ExcelProperty(value = {"备注"}, index = 39)
    @ApiModelProperty("备注")
    private String remark;

    @ExcelProperty(value = {"负责民警"}, index = 40)
    @ApiModelProperty("负责民警(智能硬件、智能软件)")
    private String responsiblePolice;

    @ExcelProperty(value = {"销售商"}, index = 41)
    @ApiModelProperty("销售商(采购)")
    private String retailer;

    @ExcelProperty(value = {"软件简介"}, index = 42)
    @ApiModelProperty("软件简介(智能软件)")
    private String softContent;

    @ExcelProperty(value = {"部署服务器IP"}, index = 43)
    @ApiModelProperty("部署服务器IP(智能软件)")
    private String softIp;

    @ExcelProperty(value = {"提折旧开始时间"}, index = 44)
    @ApiModelProperty("提折旧开始时间")
    private String startProvisionDate;

    @ExcelProperty(value = {"提折旧结束时间"}, index = 45)
    @ApiModelProperty("提折旧结束时间")
    private String endProvisionDate;

    @ExcelProperty(value = {"使用部门"}, index = 46)
    @ApiModelProperty("使用部门(采购)")
    private String useDepartment;

    @ExcelProperty(value = {"使用人"}, index = 47)
    @ApiModelProperty("使用人(采购)")
    private String useUser;

    private Integer whetherEnable;

    @ExcelProperty(value = {"是否启用"}, index = 48)
    @ApiModelProperty("是否启用(智能硬件、智能软件)")
    private String whetherEnableName;

    @ExcelProperty(value = {"联网正常"}, index = 49)
    @ApiModelProperty("联网正常(智能硬件)")
    private String whetherNetwork;

    @ExcelProperty(value = {"供电正常"}, index = 50)
    @ApiModelProperty("供电正常(智能硬件)")
    private String whetherPower;

    @ApiModelProperty("资产大类(基础、日常、智能硬件、智能软件)")
    private String bigNum;

    @ApiModelProperty("资产小类(基础、日常、智能硬件、智能软件)")
    private String smallNum;

    @ApiModelProperty("建设单位(基础、日常、智能硬件、智能软件)")
    private String construcUnit;

    @ApiModelProperty("项目编号")
    private String buildNum;

    @ApiModelProperty("录入人id")
    private Integer userId;

    @ApiModelProperty("资产状态，转移大修拆除")
    private Integer assetsStatus;

    @ApiModelProperty("资产类型，基础、日常、智能硬件、智能软件、采购")
    private String assetsType;

    @ApiModelProperty("标段名称")
    private String sectionName;

    @ApiModelProperty("标段id")
    private Integer sectionId;

    @ApiModelProperty("数据标签")
    private Integer dataLabelsId;

    @ApiModelProperty("提折旧时间(开始时间)")
    private String startProvisionDate1;

    @ApiModelProperty("提折旧时间(结束时间)")
    private String startProvisionDate2;

    @ApiModelProperty("账面小类")
    private Integer assetsClassificationId;

    @ApiModelProperty("账面大类")
    private Integer assetsClassificationPid;

    @ApiModelProperty("1是自建，0是外接")
    private Integer selfBuilt;

    @ApiModelProperty("运维单位(基础、日常、智能硬件、智能软件)")
    private String maintainUnit;

    @ApiModelProperty("取得日期(开始日期)")
    private String getDatetime1;

    @ApiModelProperty("取得日期(结束日期)")
    private String getDatetime2;

    @ApiModelProperty("启用日期(开始日期)")
    private String startDatetime1;

    @ApiModelProperty("启用日期(结束日期)")
    private String startDatetime2;

    @ApiModelProperty("竣工验收日期(结束日期)")
    private String completionTime1;

    @ApiModelProperty("竣工验收日期(结束日期)")
    private String completionTime2;

    @ApiModelProperty("录入时间(开始日期)")
    private String createTime1;

    @ApiModelProperty("录入时间(结束日期)")
    private String createTime2;

    @ApiModelProperty("承建单位")
    private String buildUnitName;

    @ApiModelProperty("资产大类类型")
    private String witbigAssetsType;

    @ApiModelProperty("账面大类、小类是否设置,0是未设置，1是已设置")
    private Integer whetherSet;

    @ApiModelProperty("资产状态名称")
    private String assetsStatusName;

    @ApiModelProperty("资产审批状态，0是未提交，1是审批中，2是审批通过，3是审批拒绝")
    private Integer assetApprovalStatus;

    @ApiModelProperty("二维码编号")
    private String qrCode;

    @ApiModelProperty("资产处置状态")
    private String assetDisposalName;

    @ApiModelProperty("资产处置状态ID")
    private Integer assetDisposal;

    @ApiModelProperty("资产大类分类")
    private String deviceType;

    @ApiModelProperty("公司编号")
    private Integer companyId;

    @ApiModelProperty("采购使用单位名称")
    private String useDepartmentName;

    @ApiModelProperty("资产序列号")
    private String serialNumber;

    @ApiModelProperty("信号灯查询时，项目编号")
    private String lightGetBuildNum;

    @ApiModelProperty("信号灯查询时，标段ID")
    private String lightGetSectionId;

    @ApiModelProperty("信号灯管理查询，传0时查询正常的设备")
    private Integer projectId;

    @ExcelProperty(value = {"月折旧额"}, index = 52)
    @ApiModelProperty("月折旧额")
    private Double monthDepreciation;

    @ExcelProperty(value = {"累计折旧"}, index = 53)
    @ApiModelProperty("累计折旧")
    private Double accumulatedDepreciation;

    @ExcelProperty(value = {"已折旧月份"}, index = 54)
    @ApiModelProperty("已折旧月份")
    private Integer haveDepreciationIn;

    @ExcelProperty(value = {"净值"}, index = 55)
    @ApiModelProperty("净值")
    private Double netWorth;

    @ApiModelProperty("二维码是否存在")
    private Double qrCodeWhether;

    @ApiModelProperty("生成二维码日期")
    private String qrCodeGetTime;

    @ApiModelProperty("生成二维码开始日期")
    private String qrCodeGetTime1;

    @ApiModelProperty("生成二维码结束日期")
    private String qrCodeGetTime2;

    @ApiModelProperty("是否直接生成二维码")
    private Integer qrCodeDirect;

    @ApiModelProperty("是否排除警务通、电台、执法记录仪")
    private Integer exclude;

    @ApiModelProperty("照片地址")
    private String imageUrl;

    @ApiModelProperty("字段为1表示查询除了作废以外的资产")
    private Integer normalAssets;
}